// multiSelectCart.js
let multiSelectMode = false;

// 进入多选模式
function enterMultiSelectMode() {
    multiSelectMode = true;
    // 显示所有复选框
    document.querySelectorAll('.item-checkbox').forEach(checkbox => {
        checkbox.style.display = 'block';
    });
    // 切换按钮显示
    document.getElementById('multiSelectBtn').style.display = 'none';
    document.getElementById('multiSelectActions').style.display = 'flex';

    // 添加复选框事件监听
    document.querySelectorAll('.cart-item-checkbox').forEach(checkbox => {
        checkbox.addEventListener('change', updateSelectedTotal);
    });

    // 初始更新总价
    updateSelectedTotal();
}

// 退出多选模式
function exitMultiSelectMode() {
    multiSelectMode = false;
    // 隐藏所有复选框
    document.querySelectorAll('.item-checkbox').forEach(checkbox => {
        checkbox.style.display = 'none';
        checkbox.querySelector('input').checked = false;
    });
    // 切换按钮显示
    document.getElementById('multiSelectBtn').style.display = 'block';
    document.getElementById('multiSelectActions').style.display = 'none';

    // 移除复选框事件监听
    document.querySelectorAll('.cart-item-checkbox').forEach(checkbox => {
        checkbox.removeEventListener('change', updateSelectedTotal);
    });

    // 恢复显示整个购物车的总价
    updateTotalPrice();
}

// 结算选中的商品
function checkoutSelectedItems(userId) {
    const selectedCartIds = [];
    document.querySelectorAll('.cart-item-checkbox:checked').forEach(checkbox => {
        selectedCartIds.push(checkbox.getAttribute('data-cart-id'));
    });

    if (selectedCartIds.length === 0) {
        alert('请至少选择一个商品进行结算');
        return;
    }

    // 这里可以添加实际的结算逻辑
    alert(`结算选中的商品：${selectedCartIds.join(', ')}`);

    // 示例：发送结算请求
    /*
    fetch('/api/checkout', {
        method: 'POST',
        headers: { 'Content-Type': 'application/json' },
        body: JSON.stringify({ userId, cartItemIds: selectedCartIds })
    })
    .then(response => response.json())
    .then(data => {
        if (data.success) {
            alert('结算成功！');
            // 重新加载购物车
            getCartData(userId);
        } else {
            alert('结算失败: ' + data.message);
        }
    })
    .catch(error => alert('结算失败: ' + error.message));
    */
}

// 全选/取消全选
function toggleSelectAll() {
    const allCheckboxes = document.querySelectorAll('.cart-item-checkbox');
    const allChecked = Array.from(allCheckboxes).every(checkbox => checkbox.checked);

    allCheckboxes.forEach(checkbox => {
        checkbox.checked = !allChecked;
    });

    document.getElementById('selectAllText').textContent = allChecked ? '全选' : '取消全选';

    // 更新总价
    updateSelectedTotal();
}